package com.kgc.scd.service;

import java.util.Map;

/**
 * Created On : 2022/11/3.
 * <p>
 * Author : zhukang
 * <p>
 * Description: 微信支付业务接口
 */
public interface WechatPayService {

    /**
     * @author : zhukang
     * @date   : 2022/11/3
     * @param  : []
     * @return : java.lang.String
     * @description : 生成请求微信支付的统一下单接口参数，返回xml格式字符串
     */
    String generateWxpayUnifyOrderXmlParams(Map<String,String> msgMap, int orderPrice) throws Exception;

    /**
     * @author : zhukang
     * @date   : 2022/11/3
     * @param  : [unifyOrderXmlParams]
     * @return : java.util.Map<java.lang.String,java.lang.String>
     * @description : 请求微信支付统一下单接口，生成预支付单，获取返回结果
     */
    Map<String, String> getWechatPayUnifyOrderResult(String unifyOrderXmlParams) throws Exception;

    /**
     * @author : zhukang
     * @date   : 2022/11/3
     * @param  : [wxpayNotifyXmlResult]
     * @return : java.lang.String
     * @description : 解析异步回调的支付结果，并获取通知微信官方的响应结果
     */
    String getReturnWechatXmlResult(String wxpayNotifyXmlResult) throws Exception;
}
